const CompressionPlugin = require('compression-webpack-plugin')//gzip压缩
module.exports = {
  publicPath:'./',//vue-cli3.3新版本
  outputDir:"dist",
  pages: undefined,//以多页模式构建应用程序。
  assetsDir: 'static',  //放置生成的静态资源 (js、css、img、fonts) 的 (相对于 outputDir 的) 目录。 
  productionSourceMap:false ,//去掉.map文件
  lintOnSave:false,//关闭eslint规范
  devServer: {
    // open: true, //配置自动启动浏览器
    host: '127.0.0.1',//避免http://localhost:8080/sockjs-node  报错
    port: 8089,
    proxy: {
      '/number':{//用户信息接口
        target: 'https://easy-mock.com/mock/5cede8275900fc69baaf9e4c/num',
        secure: false,  // 如果是https接口，需要配置这个参数
        changeOrigin: true,  //是否跨域
        pathRewrite: {
          '^/number': ''
        },
      },
      '/hai':{//美团电影接口
        target: 'http://39.97.33.178/api',
        changeOrigin: true,  //是否跨域
        pathRewrite: {
          '^/hai': ''
        },
      },
      '/music':{//音乐接口
        target: 'http://u-to-world.com:3000',
        secure: false,
        changeOrigin: true,  //是否跨域
        pathRewrite: {
          '^/music': ''
        },
      },
    }
  },
  css: {
    // 是否使用css分离插件 ExtractTextPlugin
    extract: false,
    // 开启 CSS source maps?
    sourceMap: false,
    // css预设器配置项
    loaderOptions: {},
    // 启用 CSS modules for all css / pre-processor files.
    modules: false
  },
  configureWebpack: (config) => {//gzip压缩
    if (process.env.NODE_ENV === 'production') {
        // 为生产环境修改配置...
        config.mode = 'production'
        return {
            plugins: [new CompressionPlugin({
                test: /\.js$|\.html$|\.css/, //匹配文件名
                threshold: 10240, //对超过10k的数据进行压缩
                deleteOriginalAssets: false //是否删除原文件
            })]
        }
    }
  }
}
